/**
 * 工作任务引擎
 * 任务管理子系统
 * 平台任务列表
 */
/**
 * 
 * 这是代码生成出来的js，原则上不建议修改此文件.
 * 
 **/
var qrtzJobsDataGrid;

	$(function() {
	
		qrtzJobsDataGrid = $('#qrtzJobsDataGrid').datagrid({
			url : thunms.base()+'/schedule/quartz/qrtzJobs/dataGridList',
			toolbar : '#toolbar',
			title : '信息列表',
			pagination : true,
			pageSize : 10,
			pageList : [ 10, 20, 30, 40, 50, 60, 70, 80, 90, 100 ],
			fit : true,
			fitColumns : true,
			nowrap : false,
			border : false,
			idField : 'id',
			frozenColumns : [ [ {
				title : 'id',
				field : 'id',
				width : 50,
				checkbox : true
			} ] ],
			columns : [ [
				{
				field : 'name',
				title : '任务名称',
				width : 150,
				sortable : true
			}, 
				{
				field : 'jobGroup',
				title : '任务分组',
				width : 150,
				sortable : true
			}, 
				{
				field : 'description',
				title : '任务描述',
				width : 150,
				sortable : true
			}, 
				{
				field : 'jobClass',
				title : '任务类名称',
				width : 350,
				sortable : true
			}] ],
			onRowContextMenu : function(e, rowIndex, rowData) {
				e.preventDefault();
				$(this).datagrid('unselectAll');
				$(this).datagrid('selectRow', rowIndex);
				$('#menu').menu('show', {
					left : e.pageX,
					top : e.pageY
				});
			}
		});

	});
	
	
	function searchFun() {
		qrtzJobsDataGrid.datagrid('load', $("#qrtzJobsSearchForm").serializeObject());
	}
	function clearFun() {
		qrtzJobsDataGrid.datagrid('load', {});
	}
	function closeWindow(){
		qrtzJobsDialog.window('close');
		qrtzJobsDialog.hide();
	}
	
	/**
	 *  简单任务添加
	 */
	function qrtzJobsSimpleAppend() {
	var rows = qrtzJobsDataGrid.datagrid('getSelections');
    if (rows.length != 1 && rows.length != 0) {
        var names = [];
        for (var i = 0; i < rows.length; i++) {
            names.push(rows[i].id);
        }
        parent.thunms.show({
                    msg : '只能择一个任务进行设置！您已经选择了' + rows.length + '个任务',
                    title : '提示'
                });
    } else if (rows.length == 1) {
    	 parent.thunms.confirm('请确认', '您要设置当前任务的调度信息？', function(r) {
	     if (r) {
        //在此添加业务
    	var p = parent.thunms.dialog({
	                href : thunms.base() + '/schedule/quartz/qrtzJobs/simpleAdd',
	                title : '简单任务添加',
	                width : 580,
	                height : 480,
	                buttons : [{
	                            text : '保存',
	                            handler : function() {
	                                parent.thunms.confirm('请确认', '您要保存当前新增的信息？', function(r) {
	                                            if (r) {
	                                                var f = p.find('#qrtzJobsAddForm');
	                                                f.form('submit', {
	                                                            url : thunms.base() + '/schedule/quartz/qrtzJobs/simpleAddSave?jobsId='+rows[0].id,
	                                                            success : function(d) {
	                                                                var json = $.parseJSON(d);
	                                                                if (json.success) {
	                                                                    qrtzJobsDataGrid.datagrid('reload');
	                                                                    p.dialog('close');
	                                                                }
	                                                                parent.thunms.show({
	                                                                            msg : json.msg,
	                                                                            title : '提示'
	                                                                        });
	                                                            }
	                                                        });
	                                            }
	                                        });
	                            }
	                        }, {
	                            text : '取消',
	                            handler : function() {
	                                parent.thunms.confirm('请确认', '您要取消当前操作吗？', function(r) {
	                                            if (r) {
	                                                p.dialog('close');
	                                            }
	                                        });
	                                
	                            }
	                        }]
	            });
    
    }
	    });
    } else {
        parent.thunms.show({
                    msg : '请选择需要设置的任务',
                    title : '提示'
                });
    }
	    
}
	/**
	 * 周期任务添加
	 */
	function qrtzJobsPeriodAppend() {
	var rows = qrtzJobsDataGrid.datagrid('getSelections');
    if (rows.length != 1 && rows.length != 0) {
        var names = [];
        for (var i = 0; i < rows.length; i++) {
            names.push(rows[i].id);
        }
        parent.thunms.show({
                    msg : '只能择一个任务进行设置！您已经选择了' + rows.length + '个任务',
                    title : '提示'
                });
    } else if (rows.length == 1) {
        //在此添加业务
    	 parent.thunms.confirm('请确认', '您要设置当前任务的调度信息？', function(r) {
	    if (r) {
    	var p = parent.thunms.dialog({
	                href : thunms.base() + '/schedule/quartz/qrtzJobs/periodAdd',
	                title : '周期任务添加',
	                width : 580,
	                height : 480,
	                buttons : [{
	                            text : '保存',
	                            handler : function() {
	                                parent.thunms.confirm('请确认', '您要保存当前新增的信息？', function(r) {
	                                            if (r) {
	                                                var f = p.find('#qrtzJobsAddForm');
	                                                f.form('submit', {
	                                                            url : thunms.base() + '/schedule/quartz/qrtzJobs/periodAddSave?jobsId='+rows[0].id,
	                                                            success : function(d) {
	                                                                var json = $.parseJSON(d);
	                                                                if (json.success) {
	                                                                    qrtzJobsDataGrid.datagrid('reload');
	                                                                    p.dialog('close');
	                                                                }
	                                                                parent.thunms.show({
	                                                                            msg : json.msg,
	                                                                            title : '提示'
	                                                                        });
	                                                            }
	                                                        });
	                                            }
	                                        });
	                            }
	                        }, {
	                            text : '取消',
	                            handler : function() {
	                                parent.thunms.confirm('请确认', '您要取消当前操作吗？', function(r) {
	                                            if (r) {
	                                                p.dialog('close');
	                                            }
	                                        });
	                                
	                            }
	                        }]
	            });
    }
	    });
    } else {
        parent.thunms.show({
                    msg : '请选择需要设置的任务',
                    title : '提示'
                });
    }
	    
	}
	/**
	 * 高级任务添加
	 */
	function qrtzJobsAdvancedAppend() {
	var rows = qrtzJobsDataGrid.datagrid('getSelections');
    if (rows.length != 1 && rows.length != 0) {
        var names = [];
        for (var i = 0; i < rows.length; i++) {
            names.push(rows[i].id);
        }
        parent.thunms.show({
                    msg : '只能择一个任务进行设置！您已经选择了' + rows.length + '个任务',
                    title : '提示'
                });
    } else if (rows.length == 1) {
        //在此添加业务
    	 parent.thunms.confirm('请确认', '您要设置当前任务的调度信息？', function(r) {
	     if (r) {
	    	 var upladoer = $('<iframe/>');
			 upladoer.attr({'src':thunms.base() + '/schedule/quartz/qrtzJobs/advancedAdd?jobsId='+rows[0].id,width:'100%',height:'99.2%',frameborder:'0',scrolling:'no'});
	    	 
    	 var p = parent.thunms.dialog({
	                //href : thunms.base() + '',
    		 		content:upladoer,
	                title : '高级任务添加',
	                maximized:true,
                    closable:false,
	               	width : $(document.body).width(),
	                height : $(document.body).height(),
	                buttons : [{
	                            text : '保存',
	                            handler : function() {
	                                parent.thunms.confirm('请确认', '您要保存当前新增的信息？', function(r) {
	                                            if (r) {
	                                            	$(upladoer)[0].contentWindow.advancedAddSave(p,qrtzJobsDataGrid);
	                                            }
	                                        });
	                            }
	                        }, {
	                            text : 'Cron测试',
	                            handler : function() {
	                                parent.thunms.confirm('请确认', '您要测试当前表达式吗？', function(r) {
	                                            if (r) {
	                                            	$(upladoer)[0].contentWindow.cronExpression();
	                                            }
	                                        });
	                                
	                            }
	                        },{
	                            text : '取消',
	                            handler : function() {
	                                parent.thunms.confirm('请确认', '您要取消当前操作吗？', function(r) {
	                                            if (r) {
	                                                p.dialog('close');
	                                            }
	                                        });
	                                
	                            }
	                        }]
	            });
    }
	    });
    } else {
        parent.thunms.show({
                    msg : '请选择需要设置的任务',
                    title : '提示'
                });
    }
	   
	}
	/**
	 * 定时任务配置
	 */
	function qrtzJobsTimer(){
		var rows = qrtzJobsDataGrid.datagrid('getSelections');
	    if (rows.length != 1 && rows.length != 0) {
	        var names = [];
	        for (var i = 0; i < rows.length; i++) {
	            names.push(rows[i].id);
	        }
	        parent.thunms.show({
	                    msg : '只能择一个任务进行设置！您已经选择了' + rows.length + '个任务',
	                    title : '提示'
	                });
	    } else if (rows.length == 1) {
	    	 parent.thunms.confirm('请确认', '您要设置当前任务的调度信息？', function(r) {
		     if (r) {
	        //在此添加业务
	    	var p = parent.thunms.dialog({
		                href : thunms.base() + '/schedule/quartz/qrtzJobs/timer',
		                title : '定时任务配置',
		                width : 1280,
		                height : 600,
		                buttons : [{
		                            text : '保存',
		                            handler : function() {
		                                parent.thunms.confirm('请确认', '您要保存当前配置信息？', function(r) {
		                                            if (r) {
		                                                var f = p.find('#qrtzJobsTimerForm');
		                                                f.form('submit', {
		                                                            url : thunms.base() + '/schedule/quartz/qrtzJobs/timerSave?jobsId='+rows[0].id,
		                                                            success : function(d) {
		                                                                var json = $.parseJSON(d);
		                                                                if (json.success) {
		                                                                	 parent.thunms.show({
		                                                                            msg : json.msg,
		                                                                            title : '提示'
		                                                                        });
		                                                                    p.dialog('close');
		                                                                }else{
		                                                                	parent.parent.thunms.alert("提示:",json.msg,"error");
		                                                                }
		                                                               
		                                                            }
		                                                        });
		                                            }
		                                        });
		                            }
		                        },{
		                            text : 'Cron测试',
		                            handler : function() {
		                                parent.thunms.confirm('请确认', '您要测试当前表达式吗？', function(r) {
		                                            if (r) {
		                                            	var t=p.find("#qrtzType:checked").val();
		                                            	if(t=='3'){
		                                            	var cron= p.find("#cronExpression").val();
		                                                $.ajax({
		                                            			url :  thunms.base()+'/schedule/quartz/qrtzJobs/cronExpression',
		                                            			data : {
		                                            				cron : cron
		                                            			},
		                                            			cache : false,
		                                            			dataType : "html",
		                                            			success : function(msg) {
		                                            				parent.parent.thunms.alert("表达式测试结果",msg);
		                                            			}
		                                            		});	
		                                            }
		                                            	
	                                            	}else{
	                                            		parent.parent.thunms.alert("提示","当前类型不需要测试");
	                                            	}
		                                        });
		                                
		                            }
		                        }, {
		                            text : '取消',
		                            handler : function() {
		                                parent.thunms.confirm('请确认', '您要取消当前操作吗？', function(r) {
		                                            if (r) {
		                                                p.dialog('close');
		                                            }
		                                        });
		                                
		                            }
		                        }]
		            });
	    
	    }
		    });
	    } else {
	        parent.thunms.show({
	                    msg : '请选择需要设置的任务',
	                    title : '提示'
	                });
	    }
	}
	/**
	 * 监控
	 */
	function qrtzJobsTrace(){

		var rows = qrtzJobsDataGrid.datagrid('getSelections');
	    if (rows.length != 1 && rows.length != 0) {
	        var names = [];
	        for (var i = 0; i < rows.length; i++) {
	            names.push(rows[i].id);
	        }
	        parent.thunms.show({
	                    msg : '只能择一个任务进行跟踪！您已经选择了' + rows.length + '个任务',
	                    title : '提示'
	                });
	    } else if (rows.length == 1) {
	        //在此添加业务
	    	 parent.thunms.confirm('请确认', '您要跟踪当前任务的调度信息？', function(r) {
		     if (r) {
		    	 var upladoer = $('<iframe/>');
				 upladoer.attr({'src':thunms.base() + '/schedule/quartz/qrtzTriggers/list?triggerGroup='+rows[0].jobGroup,width:'100%',height:'99.2%',frameborder:'0',scrolling:'no'});
		    	 
	    	 var p = parent.thunms.dialog({
		                //href : thunms.base() + '',
	    		 		content:upladoer,
		                title : '任务跟踪',
		                maximized:true,
	                    closable:false,
		               	width : $(document.body).width(),
		                height : $(document.body).height(),
		                buttons : [{
		                            text : '取消',
		                            handler : function() {
		                                parent.thunms.confirm('请确认', '您要取消当前操作吗？', function(r) {
		                                            if (r) {
		                                                p.dialog('close');
		                                            }
		                                        });
		                                
		                            }
		                        }]
		            });
	    }
		    });
	    } else {
	        parent.thunms.show({
	                    msg : '请选择需要设置的任务',
	                    title : '提示'
	                });
	    }
	}